// global transition css

/* 淡进出 */
.fade-enter-active,
.fade-leave-active {
  transition: opacity 0.28s;
}

.fade-enter,
.fade-leave-active {
  opacity: 0;
}

/* 左进右出 */
.fade-transform-leave-active,
.fade-transform-enter-active {
  transition: all 0.5s;
}

.fade-transform-enter {
  opacity: 0;
  transform: translateX(-30px);
}

.fade-transform-leave-to {
  opacity: 0;
  transform: translateX(30px);
}

/* 右进右出 */
.riro-leave-active,
.riro-enter-active {
  transition: all 0.3s ease-out;
}

.riro-enter-from {
  opacity: 0;
  transform: translateX(30px);
}

.riro-leave-to {
  opacity: 0;
  transform: translateX(30px);
}

/* 上进下出 */
.uido-leave-active,
.uido-enter-active {
  transition: all 0.3s ease-out;
}

.uido-enter-from {
  opacity: 0;
  transform: translateY(10%);
}

.uido-leave-to {
  opacity: 0;
  transform: translateY(10%);
}

/*
  进入和离开动画可以使用不同
  持续时间和速度曲线。
*/
.slide-fade-enter-active {
  transition: all 0.3s ease-out;
}

.slide-fade-leave-active {
  transition: all 0.3s cubic-bezier(1, 0.5, 0.8, 1);
}

.slide-fade-enter-from,
.slide-fade-leave-to {
  transform: translateX(30px);
  opacity: 0;
}

// bounce
.bounce-enter-active {
  animation: bounce-in 0.5s;
}
.bounce-leave-active {
  animation: bounce-in 0.5s reverse;
}
@keyframes bounce-in {
  0% {
    transform: scale(0);
  }
  50% {
    transform: scale(1.25);
  }
  100% {
    transform: scale(1);
  }
}

/* breadcrumb transition */
.breadcrumb-enter-active,
.breadcrumb-leave-active {
  will-change: opacity, transform;
  transition: all 0.5s;
}

.breadcrumb-enter,
.breadcrumb-leave-active {
  opacity: 0;
  transform: translateX(20px);
}

.breadcrumb-move {
  will-change: opacity, transform;
  transition: all 0.5s;
}

.breadcrumb-leave-active {
  position: absolute;
}
